home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 101-125 / scopedisk105 / viruscontrol / virus-control.doc < prev    next >
Text File  |  1995-03-19  |  13KB  |  288 lines

  1. VIRUS-CONTROL V1.3 - a powerful ANTI-VIRUS-program !!
  2. -----------------------------------------------------
  3.  
  4. Herewith I declare VIRUS-CONTROL V1.3 as PUBLIC-DOMAIN !!
  5. ---------------------------------------------------------
  6.  
  7. Hallo Amiga-friends,
  8.  
  9. First of all, sorry for my poor school-English (I'm a German).
  10. There are a lot of Anti-Virus-Programs. But none of these programs
  11. could satisfy me. Therefore I programed my own Anti-Virus-Program,
  12. very compact, very easy to use, but lots of useful functions.
  13. Now the operating instructions for VIRUS-CONTROL V1.3
  14.  
  15.  - runs on any Amiga
  16.  - 100 % assembler
  17.  - survives reset
  18.  - dangerless Boot from Virus-Disks because of Boot-Simulation
  19.  - you can switch off FastRam during reset
  20.  - Disks are checked during insertion
  21.  - Protection from Link-Viruses by File-Protection-mark
  22.  - show Bootblock on screen
  23.  - save Bootblock to a file
  24.  - overwrite Bootblock with a file
  25.  - write Original-Commodore-Bootblock,
  26.  - write NoFastMemory-Bootblock
  27.  - Inactivate(NoBoot) and reactivate(Boot) of (Virus)disks
  28.  - an extra task checks system-vectors every second
  29.  - kill system-virus by system-vectors-restoration
  30.  - you can change write-access to bootblock to harmless read-access
  31.  - a suspected Bootblock can be catalogued as dangerless
  32.  - a suspected Bootblock can be catalogued with a name
  33.  - the access to files can be controlled by an requester
  34.  - you can start VIRUS-CONTROL with additional characters
  35.      -f   do not search S:NoWarning, S:VirusName
  36.      -c   no green color-signal during disk-insertion
  37.      -t   do not check already inserted disks
  38.      -o   control File-access
  39.  
  40. I have added the well documentated source-code.
  41.  
  42. VIRUS-CONTROL is carefully thought out and compactly programmed.
  43. Nevertheless there is a filelength of nearly 13 KB.
  44. In spite of economical Intuition-programming, there are needed
  45. 5 KB only for the Intuition-structures.
  46.  
  47. You can start VIRUS-CONTROL in CLI or in startup-sequence with
  48. or without 'run'.
  49. If you try to start VIRUS-CONTROL, DOIO- and COOL-Vector are
  50. checked. If these vectors are changed, you are told, that
  51. your Amiga seems to be infected, and best you switch off your
  52. Amiga. Then switch on your Amiga again and start VIRUS-CONTROL
  53. early. Now no more virus can infect your Amiga in an unrecognized
  54. manner.
  55. If VIRUS-CONTROL is installed already, you are told about this.
  56. If VIRUS-CONTROL finds a changed KICK-vector or a changed BeginIO-
  57. vector, there will be an information only, because also serious
  58. programs change these vectors (FACC changes Begin-IO, RAD: changes
  59. KICK-vectors).
  60.  
  61. The reset-routine jumps to VIRUS-CONTROL by the COOL-vector.
  62. VIRUS-CONTROL now checks, if left mouse-button is pressed.
  63. In this case VIRUS-CONTROL will be removed. Otherwise a green
  64. color-signal indicates, that further VIRUS-CONTROL is controlling
  65. the system.
  66. Now DOIO-vector is set to VIRUS-CONTROL. From now on each DOIO
  67. is checked if it is a DOIO to disk track 0.
  68. The following boot-routine, the insertion of a disk or 'loadwb'
  69. does a DOIO to disk track 0. If you start VIRUS-CONTROL without
  70. -t, there also is a DOIO to disk track 0.
  71.  
  72. Your Amiga only boots from disk, if it is a DOS-disk and if the
  73. bootblock-checksum is correct.
  74. If this is fulfilled, the disk-bootcode is checked. If the bootcode
  75. differs from Standard-bootcode, this bootcode could be a bootblock-
  76. virus. But also it could be a harmless Intro or autoboot-game.
  77. Such a disk is considered as a 'suspected disk', because it could
  78. be a Bootblock-Virus-disk.
  79.  
  80. If your Amiga wants to boot from disk, VIRUS-CONTROL checks if the
  81. inserted disk is a 'suspected disk'.
  82. In this case there will be a requester, which offers a dangerless
  83. Boot-simulation or the real disk-boot-routine. If you select the
  84. real disk-boot-routine, there will be another requester, which
  85. will inform you about the danger of activating a bootblock-Virus
  86. by the real disk-boot-routine.
  87.  
  88. You are working with your Amiga. If you now insert a 'suspected
  89. disk', a powerful Warn-Window will appear.
  90. If you press right ALT-key and insert a 'suspected disk',
  91. VIRUS-CONTROL will not check the disk. No Warn-Window will appear.
  92. If you press left ALT-key, there always will be a Warn-Winow, also
  93. if the inserted disk is 'not suspected'. In this way you can work
  94. on 'not suspected' disks too.
  95. If there is not enough memory to open the Warn-Window, a black
  96. color-signal will indicate the 'suspected disk'.
  97. The Warn-Window offers a lot of useful and powerful possibilities.
  98.  
  99. Clicking CLOSE-Gadget concludes working on disk.
  100. Now you are allowed to remove disk.
  101.  
  102. Clicking 'FINISH VIRUSCONTROL' removes VIRUS-CONTROL.
  103.  
  104. Clicking 'KILL SYSTEM-VIRUS' restores system-vectors.
  105.  
  106. Clicking 'BOOTBLOCK -> SCREEN' shows the total bootblock
  107. (1024 Bytes) as an ASCII-Dump.
  108.  
  109. Clicking 'BOOTBLOCK -> FILE' writes the total Bootblock
  110. (1024 Bytes) to a file, which name is entered in the
  111. string-gadget at the bootom of the window.
  112.  
  113. Clicking 'FILE -> BOOTBLOCK' writes the file, which name
  114. is entered in the string-gadget, to the bootblock.
  115.  
  116. In this way you can easily save the bootblock of an important
  117. disk to a file and if necessary you can restore this bootblock.
  118.  
  119. Clicking 'STANDARD-BOOTBLOCK' writes the Original-Amiga-Bootblock
  120. to disk (like 'install')
  121.  
  122. Clicking 'NOFASTMEM-BOOTBLOCK' writes a bootblock-routine to disk,
  123. which switches off FastMem already at the beginning of boot.
  124. The NoFastMem-Routine is indicated by a blue color-signal.
  125. If you press left mouse-button during reset, NoFastMem-Routine
  126. will not be executed.
  127.  
  128. Clicking 'f.CHECKSUM -> NOBOOT' writes a false Bootblock-Checksum
  129. to disk. Now this disk is no more a boot-disk. An eventual
  130. bootblock-virus cannot be activated any more.
  131.  
  132. Clicking 'r.CHECKSUM -> Boot' writes a correct Bootblock-Checksum.
  133. Now this disk is a boot-disk. A bootblock-virus can be activated.
  134.  
  135. r/f.CHECKSUM only changes the BootBlock-Checksum.
  136. The contents of the bootblock is not changed.
  137.  
  138. Clicking 'IN S:NOWARNING-FILE' saves the 'suspected bootblock'
  139. to the file S:NoWarning. If S:NoWarning exists, the bootblock
  140. is appended to S:NoWarning, otherwise first S:NoWarning is
  141. created. If the bootblock already exists in S:NOWARNING,
  142. there will be a requester, which offers to remove the bootblock
  143. from S:NOWARNUNG.
  144. If you now insert a disk with a bootblock saved in S:NoWarning,
  145. there will only be a red color-signal instead of the Warn-Window.
  146. This is useful for harmless No-Standard-Bootblock-disks, like
  147. some Boot-Intros or auto-boot-games.
  148.  
  149. Clicking 'IN S:VIRUSNAME-FILE' saves the 'suspected bootblock'
  150. to the file S:VirusName. Besides a name for the bootblock is
  151. saved. This name is entered in the string-gadget. If S:VirusName
  152. exists, the bootblock+name is appended to S:VirusName, otherwise
  153. first S:VirusName is created. If the bootblock already exists
  154. in S:VirusName, there will be a requester, which offers to remove
  155. the bootblock+name or to rename the bootblock.
  156. If you now insert a disk with a bootblock saved in S:VirusName,
  157. the bootblock-name will be printed into the appearing Warn-Window.
  158. Often a bootblock-virus has an infection-counter. Therefore
  159. 1 Longword-difference is tolerated. This is printed too.
  160.  
  161. In this way you can acquaint VIRUS-CONTROL with any bootblock.
  162. Therefore VIRUS-CONTROL cannot become out of date!
  163.  
  164. If you insert a 'suspected disk', first S:NoWarning is searched,
  165. then S:VirusName. If you insert a disk, pressing left-ALT-key,
  166. only S:VirusName is searched, since there always shall be a
  167. Warn-Window.
  168. If you start VIRUS-CONTROL with -f, S:NoWarning, S:VirusName are
  169. not searched.
  170.  
  171. All critical functions like write to Bootblock or finish VIRUS-
  172. CONTROL are protected by additional requesters.
  173.  
  174. Furthermore there is an requester for write-protected disks.
  175. Also an OpenFile-Error is indicated by a requester.
  176. You can simultaneously use df0: - df3:. Therefore all Warn-Windows
  177. and requesters are marked.
  178.  
  179. If you insert a disk, a green color-signal indicates the correct
  180. working of VIRUS-CONTROL. This signal can be switched off by
  181. starting VIRUS-CONTROL with -c.
  182.  
  183. If you start VIRUS-CONTROL, all inserted disks are checked.
  184. This checking is not done, if you add -t.
  185.  
  186. If you start VIRUS-CONTROL with -o, the OpenFile-vector will be
  187. set to VIRUS-CONTROL. Now if there is a file-access, you will be
  188. asked by a requester, to allow this access.
  189. This file-access-control is very useful to recognize LINK-VIRUSES.
  190. Link-Viruses do not spread by Bootblock, but they link themselves
  191. to existing files. They lengthen the files and are activated, if
  192. the file is executed. If now a Link-virus tries to link itself to
  193. a file, this file-access can be recognized and denied.
  194.  
  195. VIRUS-CONTROL offers another protection from Link-viruses.
  196. If you click 'FILE-PROTECTION', the file, entered in the String-
  197. Gadget, is searched for the VIRUS-CONTROL-protection-mark.
  198. If no mark is found, a requester appears, by which you can protect
  199. the file (VIRUS-CONTROL-protection-mark is appended to the file).
  200. In this protection-mark the original file-length is saved.
  201. If you click 'FILE-PROTECTION' again, VIRUS-CONTROL recognizes,
  202. that the file is already protected. Now the actual filelength
  203. is compared with the original filelength. If there is a
  204. difference, a Link-virus has linked itself to the file probably.
  205. A requester indicates this danger.
  206. You should act like that:
  207.  - copy your original-files
  208.  - protect the files with 'FILE-PROTECTION'
  209.  - check the files periodically with 'FILE-PROTECTION'
  210.  - if there is a length-difference, copy the original-file
  211.  
  212. 'FILE-PROTECTION' works on directories too. Therefore you can
  213. protect or check a total directory.
  214. Especially C:directory should be protected.
  215.  
  216. The short operation instructions of VIRUS-CONTROL can be got
  217. by starting VIRUS-CONTROL again.
  218. Hereby you can set -c -f -t -o too.
  219.  
  220. Also you can set -c -o -f by the corresponding gadgets.
  221. (FarbSignal, CheckOpen, searchfiles).
  222.  
  223. If VIRUS-CONTROL is active, no bootblock-virus can infect your
  224. Amiga, because VIRUS-CONTROL suggests a harmless Boot-simulation.
  225.  
  226. But it is thinkable, that there are viruses, which pretend to be
  227. a normal CLI-program. For instance a better 'dir'-program, which,
  228. if executed, installs a virus. But such viruses spread slowly.
  229. Nevertheless VIRUS-CONTROL recognizes such viruses too, because
  230. VIRUS-CONTROL installs an extra task to control system-vectors.
  231. Every second COOL-vector, DOIO-vector, KICK-vectors and BeginIO-
  232. vector is checked. If a vector is changed, a requester will appear,
  233. by which you can try to kill the virus. 'Kill virus' sets DOIO-
  234. vector and COOL-vector to VIRUS-CONTROL again. BeginIO-vector
  235. is set to the old adress before changed to a new address.
  236. Furthermore COLD-vector and KICK-vectors are cleared, and 1024
  237. bytes at the bottom of the supervisorstack are cleared, because
  238. there are viruses which use this area.
  239. Sometimes 'Kill virus' crashs the system, because 'Kill virus'
  240. collides with the virus. Therefore the best and safest method
  241. to remove a virus is to switch Amiga off.
  242.  
  243. In order to find out, if really a 'suspected disk' is a Virus-disk
  244. you can act like that:
  245. Install VIRUS-CONTROL and then intentionally boot from the
  246. 'suspected disk', by this an eventual bootblock-virus is activated.
  247. All inserted disks should be write-protected, in order that an
  248. eventual bootblock-virus is not spread.
  249. If it is a bootblock-virus, you will notice some of the following
  250. effects:
  251.  - Requesters appear, which indicate changed system-vectors
  252.  - Requester, because of write-access to Bootblock
  253.  - if you insert disk, no more green color-signal,
  254.    although colorsignal is set. (DOIO-vector changed by 'Virus')
  255.  - if you insert disk, pressing L-ALT-key, neither a Warn-Window
  256.    nor a black color-signal. (DOIO-vector changed by 'Virus')
  257.  - during reset no more green color-signal.
  258.    (COOL-vector changed by 'Virus')
  259.  - If you start VIRUS-CONTROL, you are told, that your Amiga
  260.    seems to be infected.
  261.  
  262. Your Amiga can be programmed in a very flexible manner.
  263. Therefore a virus will not produce all above effects.
  264. Sometimes a virus can collide with VIRUS-CONTROL
  265. and crash the system.
  266. After this test you have to switch your Amiga off, because this
  267. is the only safe method to remove a virus.
  268.  
  269. The only reliable method, to identify a Bootblock-Virus
  270. is also the most dangerous method.
  271. Without installing VIRUS-CONTROL you boot from the
  272. 'suspected disk'. Now you insert a not write-protected,
  273. and not suspected disk. After that switch your Amiga off
  274. and boot from a clean disk. Start VIRUS-CONTROL and insert
  275. the not write-protected disk. If this disk has become a
  276. 'suspected disk', the bootblock-virus is identified.
  277. You should at once write a false checksum to this disk
  278. or better overwrite the bootblock.
  279.  
  280. You see, VIRUS-CONTROL is really a very powerful instrument,
  281. to eliminate all kinds of viruses.
  282.  
  283. Nevertheless VIRUS-CONTROL is very easy to use.
  284.  
  285.  
  286. Pius Nippgen,  Bergstr. 12,  D-6657 Gersheim 8,
  287. Tel. 06843/781 or 06843/1522
  288.